#pragma once
#include<dsound.h>
#include <strmif.h>
#include <control.h>
#include <uuids.h>

class FWDirectShow
{
private:
	IGraphBuilder* _graphBuilder;
	IMediaControl* _mediaControl;
	IMediaSeeking* _mediaSeeking;
	IMediaEventEx* _mediaEventEx;
	bool _isPlaying;
	bool _isReady;
	__int64 _duration;
public:
	FWDirectShow(void);
	~FWDirectShow(void);
	void initialize();
	void load(LPCTSTR fileName);
	void playSoundTrack();
	void playSoundEffect();
	void pause();
	void resume();
	void stop();
	__int64 getCurrentPosition();
	void setPosition(__int64* pCurrent, __int64* pStop, bool absolutePositioning);
};

